var _controller;

function editSaveInit(controller) {
    this._controller = controller;

    //新增 修改
    $('#saveform').click(function () {
        //表单验证
        if (!beforeSubmit()) {
            return false;
        }
        showInfoAlertSelect("你确定要提交当前记录吗?", saveFunc);
    });
}

// 将表单序列化成json格式的数据(但不适用于含有控件的表单，例如：单/复选框、多选的select等) 简单来说：只支持 text 类型的 input
// 数据："[{\"newsTitle\":\"京东年底前将会在谷歌平台上开设旗舰网店！\",\"newsCatalog\":\"3\",\"newsDate\":\"2018-10-22 11:16:00\",\"newsContent\":\"【】10月19日消息，据报道，京东年底前将在谷歌的购物平台上开设一家旗舰网店，面向美国消费者直接销售商品，希望在美国开拓更大的市场。\",\"status\":\"0\",\"originWeb\":\"搜狐\",\"originUrl\":\"http://www.sohu.com/\",\"newsTags\":\"股, 京东, 谷歌\",\"similarSign\":\"fihryowo7s\",\"similar\":\"0.9999999\",\"stopFlag\":\"0\"},{\"newsTitle\":\"京东2018年将在谷歌平台推出美国旗舰网上商店\",\"newsCatalog\":\"3\",\"newsDate\":\"2018-10-18 11:15:00\",\"newsContent\":\"10月18日消息 据消息，京东公司将于年底前在谷歌的购物平台上推出一家旗舰网上商店，直接向美国消费者销售。　 \",\"status\":\"10\",\"originWeb\":\"搜狐\",\"originUrl\":\"http://www.sohu.com/\",\"newsTags\":\"股, 京东, 谷歌\",\"similarSign\":\"fihryowo7s\",\"similar\":\"0.9765612\",\"stopFlag\":\"0\"}]"
(function($) {
    $.fn.serializeJson = function () {
        var json_data_array = {};
        var serializeArray = this.serializeArray();

        // 先转换成{"id": ["12","14"], "name": ["aaa","bbb"], "pwd":["pwd1","pwd2"]}这种形式
        $(serializeArray).each(function () {
            if (json_data_array[this.name]) {
                if ($.isArray(json_data_array[this.name])) {
                    json_data_array[this.name].push(this.value);
                } else {
                    json_data_array[this.name] = [json_data_array[this.name], this.value];
                }
            } else {
                json_data_array[this.name] = this.value;
            }
        });

        // 再转成[{"id": "12", "name": "aaa", "pwd":"pwd1"},{"id": "14", "name": "bb", "pwd":"pwd2"}]的形式
        var vCount = 0;

        // 计算json内部的数组最大长度
        for (var item in json_data_array) {
            var tmp = $.isArray(json_data_array[item]) ? json_data_array[item].length : 1;
            vCount = (tmp > vCount) ? tmp : vCount;
        }

        if (vCount > 1) {
            var json_data = [];
            for (var i = 0; i < vCount; i++) {
                var jsonObj = {};
                for (var item_c in json_data_array) {
                    jsonObj[item_c] = json_data_array[item_c][i];
                }
                json_data.push(jsonObj);
            }
            return JSON.stringify(json_data);
        } else {
            return "[" + JSON.stringify(json_data_array) + "]";
        }
    };
})(jQuery);

// 提交保存
function saveFunc() {
    var jsonStr = $("#myform").serializeJson();

    $.ajax({
        url: "/" + this._controller + "/saveEditForBatch",
        type: "POST",
        contentType: 'application/json;charset=utf-8',
        dataType: "json",
        data: jsonStr,
        async: false,
        error: function (request) {
            //提交失败
            showInfoAlert("服务器连接失败，请检查网络环境！", null);
        },
        success: function (data) {
            if (data.returnCode === 1) {
                showInfoAlert(decodeURI(data.returnMessage), jumpToIndex);
            } else {
                showInfoAlert(decodeURI(data.returnMessage), null);
            }
        }
    });
}

//跳转
function jumpToIndex() {
    window.location = "/" + this._controller + "/index";
}
